/***************************************************************************
 *   Copyright (C) 2008 by BogDan Vatra                                    *
 *   bogdan@licentia.eu                                                    *
 *                                                                         *
 *   This program is free software: you can redistribute it and/or modify  *
 *   it under the terms of the GNU General Public License as published by  *
 *   the Free Software Foundation, either version 3 of the License, or     *
 *   (at your option) any later version.                                   *
 *   This program is distributed in the hope that it will be useful,       *
 *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
 *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the         *
 *   GNU General Public License for more details.                          *
 *   You should have received a copy of the GNU General Public License     *
 *   along with this program.  If not, see <http://www.gnu.org/licenses/>. *
 ***************************************************************************/
#include "planconturiwidget.h"
#include <database.h>

using namespace SQL;

planConturiWidget::planConturiWidget(QWidget* parent, Qt::WFlags fl)
		: KontAMabilWindow(parent, fl), Ui::Form()
{
	setupUi(this);
	tip->addItem("Activ","A");
	tip->addItem("Pasiv","P");
	tip->addItem("Bifunctional","B");
	tip->addItem("In afara bilantului","F");
}

planConturiWidget::~planConturiWidget()
{
}

bool planConturiWidget::addCont(const QString & addStr, QString * result , qint64 * id)
{
	if (!defaultDatabase()->query("planConturi")->canInsert())
		return false;

	defaultDatabase()->query("planConturi")->insert();
	contEdit->setText(addStr);
	contEdit->setCursorPosition(addStr.length());

	connect(defaultDatabase()->query("planConturi"),SIGNAL(afterPost()),SLOT(accept()));
	connect(defaultDatabase()->query("planConturi"),SIGNAL(afterCancel()),SLOT(reject()));
	bool res=exec();
	disconnect(defaultDatabase()->query("planConturi"),SIGNAL(afterPost()),this, SLOT(accept()));
	disconnect(defaultDatabase()->query("planConturi"),SIGNAL(afterCancel()),this, SLOT(reject()));
	if (res)
	{
		if (result)
			*result=defaultDatabase()->query("planConturi")->value("cont").toString();
		if (id)
			*id=defaultDatabase()->query("planConturi")->value("id").toInt();
	}
	return res;

}
